package com.emeraldparser.parse;

import java.util.List;

import com.emeraldparser.symbol.Symbol;

/**
 * 
 * 
 * @author Adam Paynter
 *
 */
public interface Reducer {

	/**
	 * 
	 * @param rule
	 * @param rightHandSymbols
	 * @return The left-hand symbols yielded by the reduction.
	 */
	public List<? extends Symbol<?>> reduce(Rule rule, List<? extends Symbol<?>> rightHandSymbols);

}
